from enum import Enum


class ProviderStatusTypeChoices(Enum):
    PENDING = 1
    ACTIVE = 2
    INACTIVE = 3


PROVIDER_STATUS_TYPE_CHOICES = (
    (ProviderStatusTypeChoices.PENDING.value, 'pending'),
    (ProviderStatusTypeChoices.ACTIVE.value, 'active'),
    (ProviderStatusTypeChoices.INACTIVE.value, 'inactive')
)


class ProviderStatusTypeChoices(Enum):
    PENDING = 1
    ACTIVE = 2
    INACTIVE = 3


class ProviderLicenseType(Enum):
    LP = 1
    LMFT = 2
    AMFT = 3
    LCSW = 4
    ACSW = 5
    LPCC = 6
    APCC = 7
    LEP = 8
    EP = 9
    NP = 10
    PSYCHIATRIST = 11
    MD = 12
    OD = 13
    BCBA = 14
    RDN = 15
    ACUPUNCTURIST = 16
    RN = 17
    REIKI = 18
    LIFE_COACH = 19
    HYPNOTHERAPIST = 20
    NONE = 21
    OTHER = 22


class EtheraCreditStatusType(Enum):
    ADD = 1
    REMOVE = 2


class PromoCreditStatusType(Enum):
    ADD = 1
    REMOVE = 2


PROVIDER_STATUS_TYPE_CHOICES = (
    (ProviderStatusTypeChoices.PENDING.value, 'pending'),
    (ProviderStatusTypeChoices.ACTIVE.value, 'active'),
    (ProviderStatusTypeChoices.INACTIVE.value, 'inactive')
)


PROVIDER_LICENSE_CHOICES = (
    (ProviderLicenseType.LP.value, 'LP'),
    (ProviderLicenseType.LMFT.value, 'LMFT'),
    (ProviderLicenseType.LCSW.value, 'LCSW'),
    (ProviderLicenseType.RN.value, 'RN'),
    (ProviderLicenseType.REIKI.value, 'REIKI'),
    (ProviderLicenseType.PSYCHIATRIST.value, 'Psychiatrist'),
    (ProviderLicenseType.HYPNOTHERAPIST.value, 'HypnoTherapist'),
    (ProviderLicenseType.AMFT.value, 'AMFT'),
    (ProviderLicenseType.ACSW.value, 'ACSW'),
    (ProviderLicenseType.RDN.value, 'RDN'),
    (ProviderLicenseType.BCBA.value, 'BCBA'),
    (ProviderLicenseType.LPCC.value, 'LPCC'),
    (ProviderLicenseType.APCC.value, 'APCC'),
    (ProviderLicenseType.LEP.value, 'LEP'),
    (ProviderLicenseType.EP.value, 'EP'),
    (ProviderLicenseType.NP.value, 'NP'),
    (ProviderLicenseType.MD.value, 'MD'),
    (ProviderLicenseType.OD.value, 'OD'),
    (ProviderLicenseType.LIFE_COACH.value, 'Life Coach'),
    (ProviderLicenseType.ACUPUNCTURIST.value, 'Apuncturist'),
    (ProviderLicenseType.OTHER.value, 'Other'),
    (ProviderLicenseType.NONE.value, 'NONE')
)

ETHERA_CREDIT_STATUS_TYPE = (
    (EtheraCreditStatusType.ADD.value, 'Add'),
    (EtheraCreditStatusType.REMOVE.value, 'Remove')
)

PROMO_CREDIT_STATUS_TYPE = (
    (PromoCreditStatusType.ADD.value, 'Add'),
    (PromoCreditStatusType.REMOVE.value, 'Remove')
)